package com.jwds.digital.bios.business.service.service.belt;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jwds.digital.bios.business.core.infrastructure.entity.belt.BeltExceptionDict;
import com.jwds.digital.bios.business.core.infrastructure.entity.belt.BeltHealthConfig;
import com.jwds.digital.bios.business.core.infrastructure.dto.belt.BeltHealthConfigReqDTO;
import com.jwds.digital.bios.business.core.infrastructure.vo.belt.BeltExceptionDictVO;
import com.jwds.digital.bios.business.core.infrastructure.vo.belt.BeltHealthConfigRespVO;
import com.jwds.tdc.framework.application.lib.page.PageRequest;
import com.jwds.tdc.framework.application.lib.page.PageResponse;

import java.util.List;

/**
 * 皮带健康配置表接口
 *
 * @author 林柏云
 * @date 2024-10-24
 */
public interface IBeltHealthConfigService extends IService<BeltHealthConfig>{

  /**
   * 列表查询
   * @return respVOList 查询结果
   */
  List<BeltHealthConfigRespVO> findAll() ;

  /**
   * 列表查询
   * @return respVOList 查询结果
   */
  void add(BeltHealthConfigReqDTO reqDto);

  /**
   * 更新
   * @param reqDto 更新对象
   */
  void update(BeltHealthConfigReqDTO reqDto);

  /**
   * 根据Id删除
   * @param id 主键id
   */
  void delete(Long id);

  /**
   *查询所有皮带扣分项字典数据
   * @return respVOList 查询结果
   */
  List<BeltExceptionDict> findDictAll();

  /**
   * 分页
   *
   * @return {@link PageResponse }<{@link BeltExceptionDictVO }>
   */
  PageResponse<BeltHealthConfigRespVO> page(PageRequest<BeltHealthConfigReqDTO> pageReq);


  void enable(Long id);

  void disable(Long id);
}